package com.aptemo.webetek.client.commands.impl;

import com.aptemo.webetek.client.commands.Action;
import com.aptemo.webetek.client.commands.responses.ListResponse;
import com.aptemo.webetek.client.enums.EnumPaymentOrdering;
import com.aptemo.webetek.client.enums.EnumPaymentType;
import com.aptemo.webetek.shared.PaymentBean;

public class GetPaymentsAction implements Action<ListResponse<PaymentBean>>
{

	private EnumPaymentType		type;

	private String				teamId;

	private String				userId;

	private EnumPaymentOrdering	order;

	protected GetPaymentsAction()
	{
	}

	public GetPaymentsAction(String teamId)
	{
		this(teamId, EnumPaymentOrdering.DATE_DESC, EnumPaymentType.ALL);
	}

	public GetPaymentsAction(String teamId, EnumPaymentOrdering order)
	{
		this(teamId, order, EnumPaymentType.ALL);
	}

	public GetPaymentsAction(String teamId, EnumPaymentType type)
	{
		this(teamId, EnumPaymentOrdering.DATE_DESC, type);
	}

	public GetPaymentsAction(String teamId, EnumPaymentOrdering order, EnumPaymentType type)
	{
		this.teamId = teamId;
		this.order = order;
		this.type = type;
		this.userId = null;
	}

	public EnumPaymentType getType()
	{
		return type;
	}

	public String getTeamId()
	{
		return teamId;
	}

	public EnumPaymentOrdering getOrder()
	{
		return order;
	}

	public String getUserId()
	{
		return userId;
	}

}
